iT邦幫忙

2022 iThome 鐵人賽

DAY 7
0

Day07-[Ruby]差一點就差很大.print puts p 的差別(part I)

在寫程式的時候,
我們常常需要把結果印出來,
這時就可以用到"三p兄弟"

print puts p 的差別

例如我們要印出Hello, Ruby
我們可以使用下面三個方法

print "Hello, Ruby"
puts "Hello, Ruby"
p "Hello, Ruby"

三個出來的效果不太一樣

$ irb

>> print "Hello, Ruby"
Hello, Ruby=> nil

>> puts "Hello, Ruby"
Hello, Ruby
=> nil

>> p "Hello, Ruby"
"Hello, Ruby"
=> "Hello, Ruby"

看出差別了嗎?
print 會把引號內的字印出來,但"不會"換行,也"不會"有回傳值。
puts 會把引號內的字印出來,還會換行,但也"不會"有回傳值。
p 會連引號都印出來,還會換行,還有回傳值。

回傳值(return value)

顧名思義,
在你要求程式執行指令後,
程式會回傳一個值給你。

依照上面例子可以看到,
print 執行完後,沒有回傳值,是為nil(虛空)
puts 執行完後,沒有回傳值,是為nil(虛空)
p 執行完後,有回傳值,會回傳最後執行結果。

tags: Ruby print puts p

上一篇
Day06-[Ruby]差一點就差很大.單引號和雙引號的差別(part II)
下一篇
Day08-[Ruby]差一點就差很大.print puts p 的差別(part II)
系列文
從零開始的工程師轉職之路.新手學Ruby / Ruby on Rails遇到的問題30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言